准备工作
首先需要申请开发者账号,地址:http://developer.meituan.com/home。通过之后可以得到developerId
:10**16和SignKey
:s9bvk***mjm9xms以及测试门店信息。
开发者可使用美团外卖app端,修改定位到: 墨脱县–搜索色金拉–搜索测试门店名称测试下单。门店管理可以使用美团外卖商家版APP进行管理。
对接可以使用美团开发平台SDK或者UISDK。开发平台SDK下载地址:
https://drive.google.com/open?id=14RkrayTt_MKb2d38FhN8aHop-shEv9nJ
绑定与解绑
美团外卖商家绑定地址为:https://open-erp.meituan.com/login?developerId=101416&businessId=2&ePoiId=123324214214&signKey=s9bvktibcmjm9xms。
除了developerId
和SignKey
之外,还需传入businessId
(2表示外卖业务)和ePoiId
(该商户在ERP厂商上的唯一标识码)。
绑定成功后,美团会返回一个appAuthToken
(绑定门店成功后开放平台生产的token)。在回调方法中(下面会说到)将该token保存到数据库,用于后续调用接口。
其中appAuthToken
为门店绑定的时候生成的token。
回调
美团开发平台为外卖各个流程状态提供了回调URL,如下图所示:
回调URL对应为项目中方法的请求地址,比如订单推送URL对应项目中的:
1 | /** |
订单推送回调方法需要返回{"data": "OK"}
JSON数据,代表推送成功,否则开发平台会间隔时间连续推送。
其中关于回调返回的字段可参考美团开发平台回调API:http://developer.meituan.com/openapi#7.5.1。
除了订单回调,美团开发平台还提供了门店绑定和解绑的回调,和订单类似,配置好回调URL即可。比如门店绑定回调方法:
1 | /** |
除此之外,还有一个比较特殊的回调:
心跳是用来检测餐饮商户设备是否正常工作的定时机制,其中餐饮商户的设备包括所使用的ERP系统的云端、pos等各类设备。心跳由ERP厂商负责上报,聚宝盆开放平台负责收集,并将收集到的结果应用于外卖、点餐等业务线。
回调方法很简单:
1 | /** |
使用SDK操作订单
SDK中各个API对应的封装类按如下规则命名:通用前缀 + 业务类型前缀 + 业务二级前缀 + 具体操作 + 通用后缀。
比如确认外卖订单请求的URL为:http://api.open.cater.meituan.com/waimai/order/confirm。
接口对应完整类为:CipCater + Takeout + Order + Confirm + Request = CipCaterTakeoutOrderConfirmRequest。
返回结果为JSON字符串。
具体例子如下:
1 | JSONObject result_json = new JSONObject(); |
其中getJsonValueString
方法作用为根据字段名从JSON中获取值:
1 | /** |
使用的JSON包为net.sf.json
。
其他接口的使用以此类推。